<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <%@ include file="../../share/layoutIndex.jsp"%> 
  </head>
  
  <body>
  	<div class="ui-layout" id="layout" style="height: 100%; width: 100%;">
		<div class="ui-layout-west">
			<div class="west-Panel">
				<div class="panel-Title">功能目录</div>
				<div id="itemTree"></div>
			</div>
		</div>
		<div class="ui-layout-center">
			<div class="center-Panel">
				<div class="panel-Title">功能信息</div>
				<div class="titlePanel" style="padding-top:15px;">
					<div class="title-search">
						<table>
							<tr>
								<td>
									<div id="queryCondition" class="btn-group">
										<a class="btn btn-default dropdown-text" data-toggle="dropdown">选择条件</a>
										<a class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></a>
										<ul class="dropdown-menu">
											<li><a data-value="EnCode">编号</a></li>
											<li><a data-value="FullName">名称</a></li>
											<li><a data-value="UrlAddress">地址</a></li>
										</ul>
									</div>
								</td>
								<td style="padding-left: 2px;">
									<input id="txt_Keyword" type="text" class="form-control" placeholder="请输入要查询关键字" style="width: 200px;" />
								</td>
								<td style="padding-left: 5px;">
									<a id="btn_Search" class="btn btn-primary"><i class="fa fa-search"></i>&nbsp;查询</a>
								</td>
							</tr>
						</table>
					</div>
					<div class="toolbar">
						<div class="btn-group">
							<a id="lr-replace" class="btn btn-default" onclick="reload();"><i class="fa fa-refresh"></i>&nbsp;刷新</a>
							<a id="lr-add" class="btn btn-default" onclick="btn_add()"><i class="fa fa-plus"></i>&nbsp;新增</a>
							<a id="lr-edit" class="btn btn-default" onclick="btn_edit()"><i class="fa fa-pencil-square-o"></i>&nbsp;编辑</a>
							<a id="lr-delete" class="btn btn-default" onclick="btn_delete()"><i class="fa fa-trash-o"></i>&nbsp;删除</a>
						</div>
						<script>$('.toolbar').authorizeButton()</script>
					</div>
				</div>
				<div class="gridPanel">
					<table id="gridTable"></table>
				</div>
			</div>
		</div>
	</div>

<script type="text/javascript">
    $(function () {
        InitialPage();
        GetTree();
        GetGrid();
    });
    //初始化页面
    function InitialPage() {
        //layout布局
        $('#layout').layout({
            applyDemoStyles: true,
            onresize: function () {
                $(window).resize()
            }
        });
        //resize重设(表格、树形)宽高
        $(window).resize(function (e) {
            window.setTimeout(function () {
                $('#gridTable').setGridWidth(($('.gridPanel').width()));
                $("#gridTable").setGridHeight($(window).height() - 141.5);
                $("#itemTree").setTreeHeight($(window).height() - 52);
            }, 200);
            e.stopPropagation();
        });
    }
    //加载树
    var _parentId = "";
    function GetTree() {
        var item = {
            height: $(window).height() - 52,
            url: "<%=basePath%>sysModule/treeJson.do",
            onnodeclick: function (item) {
                _parentId = item.id;
                $('#btn_Search').trigger("click");
            }
        };
        //初始化
        $("#itemTree").treeview(item);
    }
    //加载表格
    function GetGrid() {
        var selectedRowIndex = 0;
        var $gridTable = $('#gridTable');
        $gridTable.jqGrid({
            url: "<%=basePath%>sysModule/listAll.do?parentId=0",
            datatype: "json",
            height: $(window).height() - 141.5,
            autowidth: true,
            colModel: [
                { label: "主键", name: "moduleId", index: "moduleId", hidden: true },
                {
                    label: "图标", name: "moduleIcon", index: "moduleIcon", width: 35, align: "right",
                    formatter: function (cellvalue, options, rowObject) {
                        return'<i class="'+cellvalue+'"></i>';
                    }
                },
				{ label: "模块名称", name: "moduleName", index: "moduleName", width: 150, align: "left" },
				{ label: "排序码", name: "sortCode", index: "sortCode", width: 50, align: "left" },
                {
                    label: "公共", name: "isPublic", index: "isPublic", width: 50, align: "center",
                    formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
                    }
                },
                {
                    label: "有效", name: "isEnabled", index: "isEnabled", width: 50, align: "center",
                    formatter: function (cellvalue, options, rowObject) {
                        return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
                    }
                },
				{ label: "导航地址", name: "moduleUrl", index: "moduleUrl", width: 350, align: "left" },
				{ label: "创建日期", name: "createDate", index: "createDate", width: 150, align: "left" },
				{ label: "创建用户", name: "createUserName", index: "createUserName", width: 150, align: "left" },
                { label: "描述", name: "otherMark", index: "otherMark", width: 100, align: "left" }
            ],
            pager: false,
            rowNum: "1000",
            rownumbers: true,
            shrinkToFit: false,
            gridview: true,
            onSelectRow: function () {
                selectedRowIndex = $("#" + this.id).getGridParam('selrow');
            },
            gridComplete: function () {
                $("#" + this.id).setSelection(selectedRowIndex, false);
            }
        });
        //查询条件
        $("#queryCondition .dropdown-menu li").click(function () {
            var text = $(this).find('a').html();
            var value = $(this).find('a').attr('data-value');
            $("#queryCondition .dropdown-text").html(text).attr('data-value', value)
        });
        //查询事件
        $("#btn_Search").click(function () {
            $gridTable.jqGrid('setGridParam', {
                url: "<%=basePath%>sysModule/listAll.do",
                postData: {
                    parentId: _parentId,
                    condition: $("#queryCondition").find('.dropdown-text').attr('data-value'),
                    keyword: $("#txt_Keyword").val()
                }
            }).trigger('reloadGrid');
        });
        //查询回车
        $('#txt_Keyword').bind('keypress', function (event) {
            if (event.keyCode == "13") {
                $('#btn_Search').trigger("click");
            }
        });
    }
    //新增
    function btn_add() {
        dialogOpen({
            id: "Form",
            title: '添加功能',
            url: '<%=basePath%>jsp/manageAuthorize/sysModule/form.do?parentId=' + _parentId,
            width: "700px",
            height: "430px",
            btn: null
        });
    };
    //编辑
    function btn_edit() {
        var keyValue = $("#gridTable").jqGridRowValue("moduleId");
        if (checkedRow(keyValue)) {
            dialogOpen({
                id: "Form",
                title: '编辑功能',
                url: '<%=basePath%>jsp/manageAuthorize/sysModule/form.do?keyValue=' + keyValue,
                width: "700px",
                height: "430px",
                btn: null
            });
        }
    }
    //删除
    function btn_delete() {
        var keyValue = $("#gridTable").jqGridRowValue("moduleId");
        if (keyValue) {
            $.RemoveForm({
                url: "<%=basePath%>sysModule/del.do",
                param: { keyValue: keyValue },
                success: function (data) {
                    $("#gridTable").trigger("reloadGrid");
                }
            })
        } else {
            dialogMsg('请选择需要删除的数据项！', 0);
        }
    }
</script>
</body>
</html>
